class Solution238 {

    public static void main(String[] args) {
        int[] arr = {1,2,3,4} ;
        System.out.println(productExceptSelf(arr));
    }
    public static int[] productExceptSelf(int[] nums) {
          int len = nums.length ;
          int[] dp = new int[len] ; 
          dp[0] = 1;
          for(int i=1 ; i < len ; i ++ ){
            dp[i] = dp[i-1] *nums[i-1];
          }
          int tmp = 1 ;
          for(int i=len-2 ; i >= 0  ; i --){
              tmp *=nums[i+1] ;
              dp[i] *= tmp ;
          }
           return  dp ; 
    }
}